/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* E.P. Scene Graph
* Developed by:
*       - Eduardo Ribeiro (eribeiro @ tecgraf . puc-rio . br)
*       - Peter Dam (peter @ tecgraf . puc-rio . br)
* File: LuaEngine.h
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */

#ifndef _EPSG_LUAENGINE_
#define _EPSG_LUAENGINE_

#include "EPSG/Engine.h"
#include <map>

namespace EPSGLua
{
	class LuaEngine : public EPSG::Engine
	{
	public:
		virtual bool		apply( unsigned char key, int x, int y );

		void				registerKey( std::string key, std::string luaFunc );

	private:
		typedef std::map<unsigned char, std::string>	TypeEngineCallbackMap;
		typedef std::pair<unsigned char, std::string>	TypeEngineCallbackPair;
		TypeEngineCallbackMap							_callbackMap;
	};
}

#endif //_EPSG_LUAENGINE_